package com.tanhua.dubbo.api;

import com.tanhua.model.domain.UserInfo;
import com.tanhua.model.vo.PageResult;

import java.util.List;
import java.util.Map;

/**
 * @author Xiao
 * @date 2021/10/22
 */
public interface UserInfoApi {
    /**
     * 存储基本资料
     * @param userInfo
     */
    public void save(UserInfo userInfo);

    /**
     * 更新头像
     * @param userInfo
     */
    public void update(UserInfo userInfo);

    /**
     * 根据id获取用户信息
     * @param userID
     * @return
     */
    UserInfo selectById(Long userID);

    /**
     * 根据ids获取用户信息
     * @param userIds
     * @return
     */
    List<UserInfo> selectByIds(List<Long> userIds);

    /**
     * 交友-推荐朋友，根据条件和用户id查询
     * @param userIds
     * @param userInfo
     * @return
     */
    Map<Long, UserInfo> selectByIdsAndCondition(List<Long> userIds, UserInfo userInfo);

    /**
     * 查询所有用户详情信息
     * @return
     */
    List<UserInfo> list();

    /**
     * 分页查询用户详情
     * @param page
     * @param pagesize
     * @return
     */
    PageResult selectPageUserInfos(Integer page, Integer pagesize);
}
